function $ajax(option) {
    let xml = new XMLHttpRequest()
    // 校验请求9方法和请求地址
    if (!('method' in option)) {
        return '请求方法不存在'
    }
    if (!('url' in option)) {
        return '请求地址不存在'
    }
    xml.open(option.method, option.url)
    // header 存在时批量添加请求头
    if (option.headers) {
        for (const key in option.headers) {
            xml.setRequestHeader(key, option.headers[key])
        }
    }

    // 携带token
    let token = localStorage.getItem('token')
    if (token) {
        xml.setRequestHeader('Admin-Token', token)
    }

    xml.send(option.method === 'get' ? null : JSON.stringify(option.data))
    xml.onreadystatechange = function () {
        if (xml.readyState === 4 && xml.status === 200) {
            let data = JSON.parse(xml.responseText)
            if (option.success) {
                // 成功回调
                option.success(data)
            }
        }
        if (xml.status !== 200) {
            // 失败回调
            if (option.error) {
                option.error(xml.status)
            }
        }
    }

}